package com.manong.vo;

import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.AllArgsConstructor;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;

/**
 * @author 李茂鑫
 * @Date 2025/1/15 14:28
 * @Descripition  路由封装类
 */
@Data
@JsonInclude(JsonInclude.Include.NON_EMPTY)
//JsonInclude.Include.NON_EMPTY 指定 只有非空的字段 会被序列化为 JSON。如果字段是 null 或空值，那么这些字段就不会出现在最终的 JSON 输出中。
public class RouterVo {

        private String path;  //路由地址
        private String component;  //路由对应地址
        private boolean alwaysShow;  //是否显示
        private String name;   //路由名称
        private Meta meta;   //路由meta信息
        @Data
        @AllArgsConstructor
        public  class Meta{
                private String title;  //标题
                private String icon;  //图标
                private String[] roles;  //角色列表
    }
    private List<RouterVo>children=new ArrayList<RouterVo>();
     //子路由
}
